count = 0								#定义全局变量count，记录移动步数
#定义函数，n表示层数，a表示起始柱、b表示辅助柱、c表示目标柱
def hanoi(n, a, b, c):
    global count						#使用global关键字声明count  global 是Python中的一个关键字，用于在函数内部访问和修改全局变量。
    count += 1
    if n == 1:
        print(a, '→', c)			#将盘子从a->c
    else:
        hanoi(n-1, a, c, b)			#将n-1个盘子从a->b
        print(a, '→', c)			#将a的最后一个盘子从a->c
        hanoi(n-1, b, a, c)			#将b的n-1个盘子从b->c
N = int(input('请输入汉诺塔的层数:'))
hanoi(N, 'A', 'B', 'C')					#调用hanoi()函数
print('汉诺塔为{}层时，共移动{}步'.format(N, count))